<!DOCTYPE html>
<html lang="zh-cn">
<head>

    <meta charset="utf-8">
    <meta http-equiv="Cache-Control" content="public, max-age=7200" />
    <meta name="generator" content="Hugo 0.73.0" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" />
    <link rel="shortcut icon" href="/img/favicon.ico" >
    <title>Ranger 使用 - Thaoeu</title>
    <meta property="og:title" content="Ranger 使用 - Thaoeu">
    <meta property="og:type" content="article">
        
    <meta property="article:published_time" content="2020-02-14T09:22:51&#43;08:00">
        
        
    <meta property="article:modified_time" content="2020-02-14T09:22:51&#43;08:00">
        
    <meta name="description" content="Ranger 使用">
        
    <meta name="author" content="thaoeu">
    <meta property="og:url" content="https://thaoeu.site/post/ranger/">

    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.0/normalize.min.css" />
    
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.8.4/themes/prism-okaidia.min.css" />
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.8.4/plugins/line-numbers/prism-line-numbers.min.css" />
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.8.4/plugins/toolbar/prism-toolbar.min.css" />
    
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" />
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.0/animate.min.css" />
    <link rel="stylesheet" href="/css/style.css">
</head>

<body>
<header id="header" class="clearfix">
    <div class="container">
        <div class="col-group">
            <img class="wow  zoomIn slow" src="/img/favicon.ico" />
            <a href="https://thaoeu.site/"><img class="wow  zoomIn slow" src="/img/title.png" /></a>
            <div class="site-name ">
                
            </div>
            <div>
                <nav id="nav-menu" class="clearfix wow slow zoomIn">
                    <a class="current" href="https://thaoeu.site/"><i class="fa fa-home" aria-hidden="true"></i>&nbsp;文章</a>
                    
                    <a  href="https://thaoeu.site/about/" title="关于">
                        <i class="fa fa-bars" aria-hidden="true"></i>&nbsp;关于
                    </a>
                    
                </nav>
            </div>
        </div>
    </div>
</header>


<div id="body">
    <div class="container">
        <div class="col-group">

            <div class="col-8" id="main">
            
                <div class="res-cons">
                    <article class="post">
                        <header>
                            <h1 class="post-title animated slower flipInX"><i class="fa fa-file-text-o"></i>&nbsp;Ranger 使用</h1>
                        </header>
                        <date class="post-meta meta-date animated slower fadeInUp">
                        <i class="fa fa-calendar" aria-hidden="true"></i>
                            2020年2月14日
                            09:22
                            
                        </date>
                        <div class="post-meta animated slower fadeInUp">
                            | <i class="fa fa-user-o" aria-hidden="true"></i>
                            <a href="/about">thaoeu</a>
                        </div>
                        
                        <br />
                        <div class="post-meta animated slower fadeInUp">
                            <i class="fa fa-clock-o"></i>&nbsp;阅读时间3分钟
                        </div>
                        <br />
                    </article>
                    
                </div>
                
                        <div class="post-content animated slower fadeInLeftBig">
                            <article>
                            <h2 id="ranger-特性">Ranger 特性</h2>
<p>Ranger 是一个终端下的文件管理器，提供了一个类 Vim 的操作环境。
<a href="https://github.com/ranger/ranger">Ranger 的项目代码</a></p>
<h2 id="查看-ranger-可选依赖">查看 ranger 可选依赖</h2>
<p><code>pacman -Qi ranger</code></p>
<pre><code>pacman -Qi ranger
</code></pre>
<p>如使用 Aur</p>
<pre><code>`yay -Qi ranger`
</code></pre>
<p>确认安装 w3m 或 python-ueberzug</p>
<p>修改 range 配置文件：~/.config/ranger/rc.conf</p>
<p>如无则生成默认配置文件<code>ranger --copy-config=all</code></p>
<p>找到配置文件中的<code>set preview_images</code> 行</p>
<p>修改为<code>set preview_images true</code></p>
<p>在<code>set preview_images_method w3m</code> 选择想要预览图片的依赖，默认 w3m</p>
<p>在 ranger 窗口内按<code>zi</code> 开启预览</p>
<p><img src="https://raw.githubusercontent.com/thaoeu/Mypic/master/title.png?token=AIDRQMWW4DFW7G5FCYGVOZC6IYXKE" alt=""></p>
<p><img src="https://i.loli.net/2020/02/25/yYglxvULAOrWJSb.jpg" alt="Hatsune.Miku.jpg"></p>
<h2 id="ranger-配置文件rcconf">Ranger 配置文件：rc.conf</h2>
<h2 id="ranger-的使用方法都包含在配置文件中了这里我直接从配置文件">Ranger 的使用方法都包含在配置文件中了，这里我直接从配置文件</h2>
<p>好！现在回想一下你在终端下的文件操作吧</p>
<p>当你想要对文件进行增删改查</p>
<p>你需要用 cd 命令进入目录，执行 ls 来列举目录下的文件名</p>
<p>或许你想了解更多，那么你还要在 ls 后面加上一系列的参数</p>
<p>如果目录里有海量的文件让你无法一眼看到目标</p>
<p>那么恭喜你，Find 命令可以帮助你</p>
<p>但是！不带参数的 Find 命令是无法模糊搜索的，如果想要支持模糊搜索，那么你还要加上 <code>-name '*.txt&quot;</code></p>
<p>这还没完，找到目标文件后，想要复制</p>
<p>你要运行 cp 并且至少要知道你目标位置的相对路径</p>
<p>剪切则用 mv, 或者复制后将目标文件删除</p>
<p>删除一个文件还好，但如果你想对一个文件夹下手</p>
<p>那么你还要添加 -r 参数</p>
<p>在这个过程中，是不会进行递归删除的</p>
<p>你的终端会一次次地问你：你确定删除这个吗？你确定吗？你真的确定吗？</p>
<p>哪怕你是一个熟练的 Linux 用户，经过这么一套操作也肯定身心俱疲</p>
<p>如果你不满足现状，希望从这些繁杂的操作中解放出来</p>
<p>那么这个开源的工具 <strong>Ranger</strong>, 就是为你量身定做的！</p>
<p>Ranger 是一款轻量的命令行文件管理器，类 vim 操作，支持强大的自定义配置
项目地址：<code>https://github.com/ranger/ranger</code></p>
<p>稍微配置一下后，长这样
<img src="~/Pictures/CL/ranger/code.png" alt="">
<img src="~/Pictures/CL/ranger/picture.png" alt="">
Ranger 支持图片预览、语法高亮，并且能匹配文件类型图标</p>
<h2 id="ranger-安装">Ranger 安装</h2>
<p>几乎所有的 Linux 包管理器都可以直接找到 Ranger.
但我更推荐的是通过 github 源码安装
克隆 Ranger</p>
<div class="highlight"><div style="background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4">
<table style="border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block;"><tr><td style="vertical-align:top;padding:0;margin:0;border:0;">
<pre style="background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code><span style="margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">1
</span></code></pre></td>
<td style="vertical-align:top;padding:0;margin:0;border:0;;width:100%">
<pre style="background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">git clone https://github.com/ranger/ranger
</code></pre></td></tr></table>
</div>
</div><p>这时就可以通过下面的命令运行 Raner</p>
<div class="highlight"><div style="background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4">
<table style="border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block;"><tr><td style="vertical-align:top;padding:0;margin:0;border:0;">
<pre style="background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code><span style="margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">1
</span></code></pre></td>
<td style="vertical-align:top;padding:0;margin:0;border:0;;width:100%">
<pre style="background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell"><span style="color:#0086b3">cd</span> ranger <span style="color:#000;font-weight:bold">&amp;&amp;</span> ./ranger.py
</code></pre></td></tr></table>
</div>
</div><p>当然安装是必须的</p>
<div class="highlight"><div style="background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4">
<table style="border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block;"><tr><td style="vertical-align:top;padding:0;margin:0;border:0;">
<pre style="background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code><span style="margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">1
</span></code></pre></td>
<td style="vertical-align:top;padding:0;margin:0;border:0;;width:100%">
<pre style="background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">sudo make clean install
</code></pre></td></tr></table>
</div>
</div><h2 id="ranger-配置">Ranger 配置</h2>
<p>到这里 Ranger 就已经安装好了，但默认的 Ranger 没有图片预览和代码高亮</p>
<p>现在就要开始配置 Ranger, 来实现这些功能</p>
<p>Ranger 支持相当多的可选依赖，如果你像我一样使用 pacman 作包管理器，只要在终端执行</p>
<div class="highlight"><div style="background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4">
<table style="border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block;"><tr><td style="vertical-align:top;padding:0;margin:0;border:0;">
<pre style="background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code><span style="margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f">1
</span></code></pre></td>
<td style="vertical-align:top;padding:0;margin:0;border:0;;width:100%">
<pre style="background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">pacman -Qi ranger
</code></pre></td></tr></table>
</div>
</div><p>可知</p>
<pre><code>
名字           : ranger
版本           : 1.9.3.4.gd8c363c9-1
描述           : A simple, vim-like file manager.
架构           : any
URL            : https://ranger.github.io/
软件许可       : GPL
组             : 无
提供           : ranger
依赖于         : python
可选依赖       : atool: for previews of archives 『已安装』
                 file: for determining file types 『已安装』
                 highlight: for syntax highlighting of code 『已安装』
                 libcaca: for ASCII-art image previews 『已安装』
                 mediainfo: for viewing information about media files
                 perl-image-exiftool: for viewing information about media files
                 poppler: for pdf previews 『已安装』
                 python-bidi: for bidi algorithm support
                 python-chardet: in case of encoding detection problems 『已安装』
                 python-ueberzug: w3mimgdisplay alternative 『已安装』
                 sudo: to use the &quot;run as root&quot;-feature 『已安装』
                 transmission-cli: for viewing bittorrent information
                 w3m: for previews of images and html pages 『已安装』
                 python-ueberzug: for previews of images and html pages 『已安装』
依赖它         : 无
被可选依赖     : 无
与它冲突       : ranger
取代           : 无
安装后大小     : 1899.65 KiB
打包者         : Matti Hyttinen &lt;matti@manjaro.com&gt;
编译日期       : 2020 年 02 月 03 日 星期一 02 时 55 分 52 秒
安装日期       : 2020 年 02 月 24 日 星期一 15 时 01 分 52 秒
安装原因       : 单独指定安装
安装脚本       : 否
验证者         : 数字签名

</code></pre><p>图片预览这里我使用的是 ueberzug</p>
<p>装好依赖到配置文件修改 preview_images_method 行为</p>
<pre><code>set preview_images_method ueberzug
</code></pre><p>Ranger 的配置文件为 <code>~/.config/ranger/rc.conf</code></p>
<p>代码高亮需要安装 highlight, 这些都能在包管理器中安装</p>
<p>文件类型图标插件我已经上传到了 github</p>
<p>下载好放到 Ranger 的 plugins 目录下即可</p>
<pre><code>https://github.com/thaoeu/ranger/tree/master/plugins
</code></pre><p>这篇到这里就结束了</p>
<p>关于 Ranger 的其他操作留到下篇</p>
<p><del>写太长自己都看不下去</del></p>

                            
                            <br />
                            <br />
                            <br />
                            <hr />
                            
                            
                            <a href="https://thaoeu.site/post/pangu/">上一页&nbsp;<i class="fa fa-angle-double-up" ></i></a>&nbsp;说说中文 Markdown 文案，以及一款为此而生的 Vim 插件<br /><br />
                            
                            
                            <a href="https://thaoeu.site/post/keynav/">下一页&nbsp;<i class="fa fa-angle-double-down" ></i></a>&nbsp;Keynav- 鼠标控制程序推荐
                            
                            <br />
                            <br />
                            <br />
                            
                            </article>
                        </div>
                        <p class="pull-right2"><a href="/" class="fa fa-home" ></a></p>
                            <p class="pull-right"><a href="#" class="fa fa-angle-double-up" ></a></p>
                            <p class="pull-left"><a href="#" onclick="javascript:history.go(-1);return false;" class="fa fa-angle-double-left" ></a></p>
                
                        
            </div>
            <div id="secondary" class="">
    <section class="widget wow slow zoomIn">
        <form id="search" action="https://www.baidu.com/s" method="get" accept-charset="utf-8" target="_blank" _lpchecked="1" onsubmit="return buildQuery()">
      
      <input type="text" id="query" maxlength="20" placeholder="Search">
      <input type="hidden" id="wd" name="wd" value="">
      <button type="submit" class="submit icon-search"></button>
</form>


<script>
    function buildQuery(){
        var queryString= document.getElementById('query').value;
        var baseUrl = "https:\/\/thaoeu.site\/";
        
        var url = baseUrl.replace(/^(https:|http:|)\/\//, "").replace(/\/$/, "");
          
        var wdElement = document.getElementById('wd');
        wdElement.value= queryString + " site:" + url;  
        
        return true;
    }
</script>

    </section>
    <section class="widget wow slow zoomIn">
        <div class="card">
            <a href="https://github.com/thaoeu">
                <div class="card-image">
                    <img class="lazy" src="/img/thaoeu.jpg" data-original="/img/fj.jpg" />
                </div>
                <div class="card-body">
                    <div class="card-title">
                        <h3>
                            Thaoeu
                        </h3>
                    </div>
                    <div class="card-date">
                        <time>
                        </time>
                    </div>
                    
                    <div class="card-exceprt">
                        <p>
                            
                        </p>
                    </div>
                </div>
            </a>
        </div>
    </section>
    <section class="widget wow slow zoomIn">
        <div id="calendar" class="calendar"></div>
    </section>
    <section class="widget wow slow zoomIn">
        <h3 class="widget-title" ><i class="fa fa-folder-o"></i>&nbsp;分类</h3>
        <ul class="widget-list">
            
        </ul>
    </section>
    <section class="widget wow slow zoomIn">
        <h3 class="widget-title"><i class="fa fa-calendar-check-o"></i>&nbsp;归档</h3>
        <ul class="widget-list">
            
            <li class="fa fa-angle-right">
                <a href="/tags/c">c (1)</a>
            </li><br />
            
            <li class="fa fa-angle-right">
                <a href="/tags/fcitx">fcitx (1)</a>
            </li><br />
            
            <li class="fa fa-angle-right">
                <a href="/tags/git">git (1)</a>
            </li><br />
            
            <li class="fa fa-angle-right">
                <a href="/tags/linux">linux (6)</a>
            </li><br />
            
            <li class="fa fa-angle-right">
                <a href="/tags/markdown">markdown (1)</a>
            </li><br />
            
            <li class="fa fa-angle-right">
                <a href="/tags/other">other (4)</a>
            </li><br />
            
            <li class="fa fa-angle-right">
                <a href="/tags/vim">vim (2)</a>
            </li><br />
            
            <li class="fa fa-angle-right">
                <a href="/tags/windows">windows (1)</a>
            </li><br />
            
            <li class="fa fa-angle-right">
                <a href="/tags/wm">wm (1)</a>
            </li><br />
            
        </ul>
    </section>
    

    <section class="widget wow slow zoomIn">
        <h3 class="widget-title"><i class="fa fa-file-o"></i>&nbsp;其它</h3>
        <ul class="widget-list">
            <li class="fa fa-angle-right"><a href="/index.xml">&nbsp;本站RSS</a></li>
        </ul><br />
    </section>
</div>

        </div>
    </div>
</div>
<footer id="footer">
    <div class="container" style="text-align:center">
        &copy; 2020 <a href="https://thaoeu.site/">Thaoeu By thaoeu</a>.

        
    </div>


<a href="https://www.upyun.com/?utm_source=lianmeng&utm_medium=referral">
    <img border="0" src="/img/logo2.png" />
</a>

    
    <div class="container" style="text-align:center">
    <a rel="nofollow noreferer noopener" href="http://www.beian.miit.gov.cn/" target="_blank">黑ICP备19007841号-2</a>.
    </div>
    
</footer>


    <script type="text/javascript">
    
    (function(){
        $("pre code").parent().addClass("line-numbers")
    }())

    window.MathJax = {
        tex2jax: {
            inlineMath: [ ['$','$'] ],
            processEscapes: true
        }
    };
    </script>
    <script type="text/javascript" src="/js/prism.js" async="true"></script>
    <script src='https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-MML-AM_CHTML' async></script>

<a id="rocket" href="#top"></a>
<script type="text/javascript" src="/js/totop.js?v=0.0.0" async=""></script>







</body>
</html>